package org.fastsyncer.sdk.client;

import java.util.List;

public interface Driver {

    /**
     * 新增驱动
     * @Title: add 
     * @Description: 新增驱动
     * @param mapping
     * @throws Exception
     * @return: String 驱动ID
     */
    String add(String mapping);

    /**
     * 修改驱动
     * 
     * @param mapping
     * @throws Exception
     */
    String update(String mapping);

    /**
     * 恢复驱动
     * 
     * @param id
     * @throws Exception
     */
    String enable(String id);

    /**
     * 禁用驱动
     * 
     * @param name
     * @throws Exception
     */
    String disable(String id);

    /**
     * 启动驱动
     * 
     * @param id
     * @throws Exception
     */
    String start(String id);

    /**
     * 停止驱动
     * 
     * @param id
     * @throws Exception
     */
    String stop(String id);

    /**
     * 删除驱动
     * 
     * @param id
     * @throws Exception
     */
    String delete(String id);

    /**
     * 获取驱动
     * @param id
     * @return
     * @throws Exception
     */
    String getDriver(String id);

    /**
     * 获取所有驱动
     * @return
     * @throws Exception
     */
    List<String> getDriverAll();
    
}
